<!DOCTYPE html>
<html>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    img {
        vertical-align: middle;
    }

    /* Position the image container (needed to position the left and right arrows) */
    .container {
        position: relative;
    }

    /* Hide the images by default */
    .mySlides {
        display: none;
    }

    .cursor {
        cursor: pointer;
    }

    /* Next & previous buttons */
    .prev,
    .next {
        cursor: pointer;
        position: absolute;
        top: 40%;
        width: auto;
        padding: 16px;
        margin-top: -50px;
        color: white;
        font-weight: bold;
        font-size: 20px;
        border-radius: 0 3px 3px 0;
        user-select: none;
        -webkit-user-select: none;
    }

    /* Position the "next button" to the right */
    .next {
        right: 0;
        border-radius: 3px 0 0 3px;
    }

    /* On hover, add a black background color with a little bit see-through */
    .prev:hover,
    .next:hover {
        background-color: rgba(0, 0, 0, 0.8);
    }

    /* Number text (1/3 etc) */
    .numbertext {
        color: #f2f2f2;
        font-size: 12px;
        padding: 8px 12px;
        position: absolute;
        top: 0;
    }

    /* Container for image text */
    .caption-container {
        text-align: center;
        background-color: #222;
        padding: 2px 16px;
        color: white;
    }

    .row:after {
        content: "";
        display: table;
        clear: both;
    }
</style>

<body>

    <h2 style="text-align:center">Slideshow Gallery</h2>


    <style>
        .container .mySlides img {
            height: 700px;
            object-fit: cover;
        }
    </style>
    <div class="container">
        <div class="mySlides">
            <div class="numbertext">1 / 6</div>
            <img src="../img/Tesla (1).jpeg" style="width:100%">
        </div>

        <div class="mySlides">
            <div class="numbertext">2 / 6</div>
            <img src="../img/Tesla (2).jpeg" style="width:100%">
        </div>

        <div class="mySlides">
            <div class="numbertext">3 / 6</div>
            <img src="../img/Tesla (3).jpeg" style="width:100%">
        </div>

        <div class="mySlides">
            <div class="numbertext">4 / 6</div>
            <img src="../img/Tesla (4).jpeg" style="width:100%">
        </div>

        <div class="mySlides">
            <div class="numbertext">5 / 6</div>
            <img src="../img/Tesla (5).jpeg" style="width:100%">
        </div>

        <div class="mySlides">
            <div class="numbertext">6 / 6</div>
            <img src="../img/Tesla (6).jpeg" style="width:100%">
        </div>

        <a class="prev" onclick="change_slides(-1)">❮</a>
        <a class="next" onclick="change_slides(1)">❯</a>

        <div class="caption-container">
            <p id="caption"></p>
        </div>




        <style>
            /* 固定高度, 抹平图片差异  */
            .row .column img {
                height: 150px;
            }

            /* Six columns side by side */
            .column {
                float: left;
                width: 16.66%;
            }

            /* Add a transparency effect for thumnbail images */
            .demo {
                opacity: 0.6;
            }

            .active,
            .demo:hover {
                opacity: 1;
            }
        </style>
        <div class="row">
            <div class="column">
                <img class="demo cursor" src="../img/Tesla (1).jpeg" style="width:100%" onclick="currentSlide(1)"
                    alt="The Woods">
            </div>
            <div class="column">
                <img class="demo cursor" src="../img/Tesla (2).jpeg" style="width:100%" onclick="currentSlide(2)"
                    alt="Cinque Terre">
            </div>
            <div class="column">
                <img class="demo cursor" src="../img/Tesla (3).jpeg" style="width:100%" onclick="currentSlide(3)"
                    alt="Mountains and fjords">
            </div>
            <div class="column">
                <img class="demo cursor" src="../img/Tesla (4).jpeg" style="width:100%" onclick="currentSlide(4)"
                    alt="Northern Lights">
            </div>
            <div class="column">
                <img class="demo cursor" src="../img/Tesla (5).jpeg" style="width:100%" onclick="currentSlide(5)"
                    alt="Nature and sunrise">
            </div>
            <div class="column">
                <img class="demo cursor" src="../img/Tesla (6).jpeg" style="width:100%" onclick="currentSlide(6)"
                    alt="Snowy Mountains">
            </div>
        </div>
    </div>

    <xmp style="font-size: 22px; font-weight: bolder;  margin-bottom: 66px;  color: black;  font-family: '微软雅黑';">
        必知必会   

        左右两边用 onclick="change_slides(-1)"  来控制上下一张
        下面的 onclick="currentSlide(5)"      来控制具体那一张
        
        切换图片的方法: 传入图片的 index
        function showSlides(n) {
            var i;
            var slides = document.getElementsByClassName("mySlides");  // 大图
            var dots = document.getElementsByClassName("demo");        // 缩略图
            var captionText = document.getElementById("caption");      // 提示文字
    
            if (n > slides.length) { slideIndex = 1 }     //  略
            if (n < 1) { slideIndex = slides.length }     //  略
    
            for (i = 0; i < slides.length; i++) {
                slides[i].style.display = "none";  // 每次点击都循环遍历的, 全部隐藏
            }
            // 每次点击都把小白点的 active 状态 / 激活状态取消掉
            for (i = 0; i < dots.length; i++) {
                dots[i].className = dots[i].className.replace(" active", "");
            }
    
            slides[slideIndex - 1].style.display = "block";    // 图片设置为 block
            dots[slideIndex - 1].className += " active";       // 缩略图设置为 激活状态
            captionText.innerHTML = dots[slideIndex - 1].alt;
        }
        
        设置透明度:
        .active,
        .demo:hover {
            opacity: 1;
        }    
    </xmp>



</body>
<script>
    function showSlides(n) {
        var i;
        var slides = document.getElementsByClassName("mySlides");  // 大图
        var dots = document.getElementsByClassName("demo");        // 缩略图
        var captionText = document.getElementById("caption");      // 提示文字

        if (n > slides.length) { slideIndex = 1 }     //  略
        if (n < 1) { slideIndex = slides.length }     //  略

        for (i = 0; i < slides.length; i++) {
            slides[i].style.display = "none";  // 每次点击都循环遍历的, 全部隐藏
        }
        // 每次点击都把小白点的 active 状态 / 激活状态取消掉
        for (i = 0; i < dots.length; i++) {
            dots[i].className = dots[i].className.replace(" active", "");
        }

        slides[slideIndex - 1].style.display = "block";    // 图片设置为 block
        dots[slideIndex - 1].className += " active";       // 缩略图设置为 激活状态
        captionText.innerHTML = dots[slideIndex - 1].alt;
    }

    // 切换上 / 下张
    function change_slides(n) {
        showSlides(slideIndex += n);
    }

    // 点击 缩略图 / 小白点
    function currentSlide(n) {
        showSlides(slideIndex = n);
    }

    // 默认为第一张图片
    var slideIndex = 1;
    showSlides(slideIndex);

</script>
</html>